home *** CD-ROM | disk | FTP | other *** search
/ PC Answers 2003 September / PC Answers September 2003.iso / Software / freeware / pixeltoolbox / Setup.exe / Main / PixelToolbox.exe / PixelToolbox.dxr / Scripts_66_snapshot behavior.ls < prev    next >
Encoding:
Text File  |  2002-06-08  |  2.6 KB  |  98 lines

  1. property pSnapState, pSnapsList, pInitialRect, pZoomedRect, pInitialChannel, pIndicatorRect
  2. global gSelectedSnapshot, gCast
  3.  
  4. on beginSprite me
  5.   pInitialChannel = sprite(me.spriteNum).locZ
  6.   pInitialRect = sprite(me.spriteNum).rect
  7.   if pSnapState then
  8.     mySnapOn(me)
  9.   end if
  10. end
  11.  
  12. on mouseWithin me
  13.   if pSnapState then
  14.     if sprite(me.spriteNum).rect = pInitialRect then
  15.       cursor(302)
  16.       put "Selected snapshot. Click to zoom in. Double right click to clear." into field "status"
  17.     else
  18.       cursor(303)
  19.       put "Selected snapshot. Click to zoom out. Double right click to clear." into field "status"
  20.     end if
  21.   else
  22.     cursor(0)
  23.     put "Click to select snapshot. Double right click to clear." into field "status"
  24.   end if
  25. end
  26.  
  27. on mouseLeave me
  28.   put EMPTY into field "status"
  29.   cursor(0)
  30. end
  31.  
  32. on mouseUp me
  33.   if pSnapState then
  34.     if sprite(me.spriteNum).rect = pInitialRect then
  35.       sprite(me.spriteNum).locZ = 266
  36.       sprite(me.spriteNum).rect = rect(0, 0, 0, 0) + pZoomedRect
  37.       sprite(265).locV = 191
  38.       sprite(267).rect = rect(121, 157, 189, 225)
  39.       cursor(0)
  40.     else
  41.       sprite(me.spriteNum).locZ = pInitialChannel
  42.       sprite(me.spriteNum).rect = pInitialRect
  43.       sprite(265).locV = -40
  44.       sprite(267).rect = rect(0, 0, 0, 0) + pIndicatorRect
  45.       cursor(0)
  46.     end if
  47.   else
  48.     mySnapOn(me)
  49.   end if
  50. end
  51.  
  52. on rightMouseUp me
  53.   if the doubleClick then
  54.     clearSnapshot(me)
  55.   end if
  56. end
  57.  
  58. on mySnapOn me
  59.   pSnapState = 1
  60.   gSelectedSnapshot = sprite(me.spriteNum).member
  61.   repeat with i in pSnapsList
  62.     if i <> me.spriteNum then
  63.       sendSprite(sprite(i), #mySnapOff)
  64.     end if
  65.   end repeat
  66.   sprite(267).rect = rect(0, 0, 0, 0) + pIndicatorRect
  67. end
  68.  
  69. on mySnapOff me
  70.   pSnapState = 0
  71. end
  72.  
  73. on selected me
  74.   repeat with i in pSnapsList
  75.     if sprite(i).pSnapState = 1 then
  76.       return i
  77.     end if
  78.   end repeat
  79. end
  80.  
  81. on clearSnapshot me
  82.   if gCast = "32bit" then
  83.     sprite(me.spriteNum).member.image.fill(sprite(me.spriteNum).member.rect, rgb(255, 255, 255))
  84.   else
  85.     sprite(me.spriteNum).member.image.fill(sprite(me.spriteNum).member.rect, paletteIndex(0))
  86.   end if
  87.   updateStage()
  88. end
  89.  
  90. on getPropertyDescriptionList me
  91.   list = [:]
  92.   addProp(list, #pSnapState, [#comment: "Initial State", #format: #boolean, #default: 0])
  93.   addProp(list, #pSnapsList, [#comment: "Sprite List", #format: #list, #default: [261, 262, 263, 264]])
  94.   addProp(list, #pZoomedRect, [#comment: "Zoomed Rect", #format: #list, #default: [123, 159, 187, 223]])
  95.   addProp(list, #pIndicatorRect, [#comment: "Indicator Rect", #format: #list, #default: [121, 157, 155, 191]])
  96.   return list
  97. end
  98.